#if 0

#include "YGPlatform.h"

#if (YG_OS_TYPE == YG_OS_TYPE_ANDROID)

#include "YGSources.h"
#include "YGRoot.h"
#include "YGGame.h"
#include "YGRootAndroid.h"

namespace YoghurtGum
{

	bool CloseApp()
	{
		DEBUG("CloseApp");

		jclass cls = g_JavaEnvironment->GetObjectClass(g_JavaObject);
		jmethodID mid = g_JavaEnvironment->GetMethodID(cls, "CloseApp", "()V");
		if (mid == 0)
		{
			DEBUG("Couldn't find function");
			return false;
		}
		g_JavaEnvironment->CallVoidMethod(g_JavaObject, mid);
		return true;
	}

		NATIVE_PRE void NATIVE_FUNC_ARGS(YGRenderer, NativeResize, jint a_Width, jint a_Height)
	{
		DEBUG("NativeResize");

		Log::GetSingleton().Print("NativeResize - Dimensions: (%i x %i)", a_Width, a_Height);

		if (!g_Startup) { Root::GetSingleton().Init(); }

		Device::Get().Resize(a_Width, a_Height);

		if (!g_Startup)
		{
			Root::GetSingleton().Start();
			g_Startup = true;
		}
	}

	NATIVE_PRE void NATIVE_FUNC_ARGS(YGActivity, NativeSetup, jstring a_PackagePath)
	{
		DEBUG("NativeSetup");

		jboolean copy;
		const char* str = env->GetStringUTFChars(a_PackagePath, &copy);

		//FileManager::Get().SetWorkingDirectory(str, strlen(str));
		FileManager::Get().SetWorkingDirectory(str, strlen(str));

		DEBUG("Path: %s", str);

		g_JavaEnvironment = env;
		g_JavaObject = thiz;

		/*DEBUG("Loading APK %s", str);
		zip* APKArchive = zip_open(str, 0, NULL);
		if (APKArchive == NULL) 
		{
			DEBUG("Error loading APK");
			return;
		}

		//Just for debug, print APK contents
		int numFiles = zip_get_num_files(APKArchive);
		for (int i = 0; i < numFiles; i++) 
		{
			const char* name = zip_get_name(APKArchive, i, 0);
			if (name == NULL) 
			{
				DEBUG("Error reading zip file name at index %i : %s", zip_strerror(APKArchive));
				return;
			}
			DEBUG("File %i : %s\n", i, name);
		}

		zip_fclose(APKArchive);*/
	}

	NATIVE_PRE void NATIVE_FUNC(YGRenderer, NativeInit)
	{
		DEBUG("NativeInit");

		g_Startup = false;

		Root::GetSingleton().AttachGame(YoghurtGum::Game::Configure());
	}

	NATIVE_PRE void NATIVE_FUNC(YGRenderer, NativeRender)
	{
		if (Root::GetSingleton().IsRunning()) 
		{ 
			Root::GetSingleton().Update();
			Root::GetSingleton().Render();
		}
		else
		{
			//CloseApp();
		}
	}

	NATIVE_PRE void NATIVE_FUNC(YGView, NativePause)
	{
		DEBUG("NativePause");
	}

	NATIVE_PRE void NATIVE_FUNC_ARGS(YGActivity, NativeKeyPress, jint a_Key)
	{
		//DEBUG("NativeKeyPress: %i", a_Key);

		Keyboard::Get().InjectPress(a_Key);

		if (a_Key == 62)
		{
			Root::GetSingleton().CloseDown();
			CloseApp();
		}
	}

	NATIVE_PRE void NATIVE_FUNC_ARGS(YGActivity, NativeKeyRelease, jint a_Key)
	{
		//DEBUG("NativeKeyRelease: %i", a_Key);

		Keyboard::Get().InjectRelease(a_Key);
	}

	NATIVE_PRE void NATIVE_FUNC(YGActivity, NativeDone)
	{
		DEBUG("NativeDone");
		//Root::GetSingleton().CloseDown();
	}


}

#endif

#endif